'use strict';
const {
  Model
} = require('sequelize');
var moment = require('moment')
moment.locale('zh-cn'); 
module.exports = (sequelize, DataTypes) => {
  class Article extends Model {
    /**
     * Helper method for defining associations.
     * This method is not a part of Sequelize lifecycle.
     * The `models/index` file will call this method automatically.
     */
    static associate(models) {
      // define association here
    }
  }
    Article.init({
        title: {
            type: DataTypes.STRING,
            allowNull: false,
            validate: {
                notNull: {
                    msg: '标题必须存在'
                },
                notEmpty: {
                    msg: '标题不能为空'
                },
                len: {
                    args: [2, 35],
                    msg: '标题长度需要在2 ~ 35个字符之间。'
                }
            }
        },
        content: DataTypes.TEXT,
        createdAt: {
            type: DataTypes.DATE,
            get() {
                return moment(this.getDataValue("createdAt")).format("YYYY-MM-DD  hh:mm:ss")
            }
        },
        updatedAt: {
            type: DataTypes.DATE,
            get() {
                return moment(this.getDataValue("updatedAt")).format("YYYY-MM-DD  hh:mm:ss")
            }
        }
    }, {
        sequelize,
        modelName: 'Article',
    });
    return Article;
};